﻿#define _CRT_SECURE_NO_WARNINGS 1
#include<iostream>
using namespace std;
class Date
{
public:
	// 1.⽆参构造函数

		Date()
	{
		_year = 1;
		_month = 1;
		_day = 1;
	}
		Date(const Date& d)
		{
			_year = d._year;
			_month = d._month;
			_day = d._day;
		}
	// 2.带参构造函数

		Date(int year, int month, int day)
	{
		_year = year;
		_month = month;
		_day = day;
	}
	// 3.全缺省构造函数

		/*Date(int year = 1, int month = 1, int day = 1)
		 {
		 _year = year;
		 _month = month;
		 _day = day;
		 }*/
		
		void Print()
	{
		cout << _year << "/" << _month << "/" << _day << endl;
	}
		int Getyear()
		{
			return _year;
		}
		int Getmonth()
		{
			return _month;
		}
		int Getday()
		{
			return _day;
		}
private:
	int _year;
	int _month;
	int _day;
};
void Func1(Date &d)
{
	cout << &d << endl;
	d.Print();
}

int main()
{
	Date d1(2024, 12, 12);
	d1.Print();
	Func1(d1);
	/*Date d2(d1);
	d2.Print();*/
	return 0;
}
//bool operator<(Date d1, Date d2)
//{
//	
//}
//bool operator==(Date d1, Date d2)
//{
//	return d1.Getyear() == d2.Getyear() &&
//		d1.Getmonth() == d2.Getmonth() &&
//		d1.Getday() == d2.Getday();
//}
//int mian()
//{
//
//	Date d1(2024, 12, 12);
//	Date d2(2024, 12, 12);
//	operator==(d1, d2);
//	d1 == d2;
//	return 0;
//}